package com.fire.service;

import com.fire.exception.ServiceException;
import com.fire.model.entity.Notice;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;
import java.util.Map;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author author
 * @since 2024-04-05
 */
public interface INoticeService extends IService<Notice> {

    /**
     * 未读消息查询
     * @return
     */
    Map<String,Object> queryUnReadNotice();

    /**
     * 修改一条消息为已读状态
     * @param id
     */
    void updateOne(Integer id) throws ServiceException;

    /**
     * 修改全部未读消息为已读状态
     */
    void updateAll();

    /**
     * 已读消息查询
     * @return
     */
    List<Notice> queryReadNotice();

    /**
     * 修改一条消息为已读 / 未读状态
     * @param id
     */
    void updateReadOrRuread(Integer id) throws ServiceException;

    /**
     * 查询所有通知
     * @return
     */
    List<Notice> queryAll();
}
